interface Position {
    top?: string;
    left?: string;
    bottom?: string;
    right?: string;
}
interface Flex {
    alignItems: string,
    justifyContent: string,
    flexDirection: string,
}
enum BorderPadding {
    padding = "0",
    boxSizing = "border-box",
}
export const FlexCss = (
    alignItems: Flex["alignItems"] = 'auto',
    justifyContent: Flex["justifyContent"] = "flex-start",
    flexDirection: Flex["flexDirection"] = 'row'
) => {
    return {
        display: "flex",
        alignItems,
        justifyContent,
        flexDirection,
    };
};
export const PositionCss = (type: string, pos: Position) => {
    return {
        position: type,
        ...pos,
    };
};
export const BorderPaddingCss = (
    padding = BorderPadding.padding,
    boxSizing = BorderPadding.boxSizing
) => {
    return {
        padding,
        boxSizing,
    };
};
export const TextOverFlowCss = (lineNumber: number) => {
    const oneLine = {
        whiteSpace: 'nowrap',
    }
    const multiLine = {
        '-webkit-line-clamp': lineNumber,
        display: '-webkit-box',
        '-webkit-box-orient': 'vertical',
    }
    const hidden = lineNumber > 1 ? multiLine : oneLine;
    return {
        overflow: 'hidden',
        textOverflow: 'ellipsis',
        ...hidden
    }
}